University Wednesday , 10 May 2000 Trace Cache
نویسنده
چکیده
Due to unfortunate circumstances this lecture was not scribed, following are several points that I remember were brought up. If anyone has something to add please tell me. In this session we discussed three papers: Alternative Fetch and Issue Policies for the Trace Cache Fetch Mechanism-describes several enhancements to the original University of Michigan view of the trace cache. Path-Based Next Trace Prediction-introduces a different way of predicting and indexing traces for the University of Wisconsin trace cache. This patent describes an instruction cache variant designed specifically for superscalar processors. It improves instruction fetch throughput while allowing a single fetched line to cross basic-block boundaries, and removing the alignment constraints of conventional instruction caches. This organization is also amenable to solving some of the more specific fetch issues of CISC processors, i.e. variable length instructions. The trace cache is organized around traces which are single-entry multiple-exit sequences of dynamically executed instructions. This is in contrast to conventional instruction caches which use sequential memory addresses as their basic line of instructions. Branch prediction information is tightly integrated with the instructions to allow fetches that also cross basic-block boundaries. A trace can contain several basic blocks that are implicitly predicted to follow one another. By fetching an entire trace many of the shortcomings of conventional instruction caches are circumvented. In instruction caches lines are aligned on address boundaries which have little to do with the actual fetch patterns, also frequent branches cause only a small part of each line fetched to be usable, as seen in the collapsing-buffer paper of
منابع مشابه
Trace Cache Redundancy: Red & Blue Traces
The objective of this paper is to improve the use of the hardware resources of the trace cache mechanism, reducing the implementation cost with no performance degradation. We achieve that by eliminating the replication of traces between the instruction cache and the trace cache. As we show, the trace cache mechanism is generating a high degree of redundancy between the traces stored in the trac...
متن کاملExploring the Trace Cache Design Space
In this report, we investigate a number of design issues of the trace cache. We also propose an approach to enhance the performance of trace caches and conduct experiments to determine its effectiveness. Chapter
متن کاملTrace Caches in the Context of other Cache Enhancements
Cache memories are now standard components of modern computer systems. They have proven extremely useful in bridging the gap between CPU and DRAM speeds, which continues to grow. Consequently, there has been a great deal of research into making caches more aggressive. A speciic type of cache is the \trace cache" which stores dynamic sequences of instructions as opposed to sequential contiguous ...
متن کاملA survey of new research directions in microprocessors
Current microprocessors utilise the instruction-level parallelism by a deep processor pipeline and the superscalar instruction issue technique. VLSI technology offers several solutions for aggressive exploitation of the instruction-level parallelism in future generations of microprocessors. Technological advances will replace the gate delay by on-chip wire delay as the main obstacle to increase...
متن کاملSimulating L3 Caches in Real Time Using Hardware Accelerated Cache Simulation (HACS): A Case Study with SPECint 2000
Trace-driven simulation is a commonly used tool to evaluate memory-hierarchy designs. Unfortunately, trace collection is very expensive, and storage requirements for traces are very large. In this paper, we introduce HACS (Hardware Accelerated Cache Simulator), and describe the validation methods we used to demonstrate functionality. We also present some initial cache simulation results from SP...
متن کامل